package com;

class Person {
    String name;

    void coding() {
    }

    ;
}

class Animal {
    // 在java中，每个类在创建的时候都会一个 默认 的构造器（构造方法），即使没有显示他也会有。构造器用来创建类对象的特殊方法，他在对象实例化时被自动调用
    // 特点：  没有返回值，    方法名必须与类名同名
    // 默认  无参构造
    // 可以自定义有参构造
    private String name;
    private int age;
    /*
     * 默认构造器编译产生 complied
     * public Animal(){}
     * */

    // 创建对象，初始化 name
    public Animal(String name) {
        this.name = name;
    }

    public Animal(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // Getter 方法： 获取 name
    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }

    //Setter 方法： 设置 name
    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

class Car {
    private String board;
    private String color;

    public Car(String board, String color) {
        this.board = board;
        this.color = color;
    }

    // 构造函数
    public String getBoard() {
        return board;
    }

    ;

    public String getColor() {
        return color;
    }

    public void setBoard(String board) {
        this.board = board;
    }

    public void setColor(String color) {
        this.color = color;
    }


}

public class Class_object {
    public static final double PI = 3.1415926;

    public static void main(String[] args) {


        Person p = new Person();  // 初创建一个p对象
        p.name = "Jackson";
        p.coding();

        //创建对象并初始化
        Animal animal = new Animal("Jackson");
        System.out.println("animal对象的 name = " + animal.getName());

        Animal animal1 = new Animal("alex", 33);
        System.out.println("animal1对象的 name = " + animal1.getName() + " animal1对象的 age = " + animal1.getAge());
        animal1.setName("wusir");
        animal1.setAge(35);
        System.out.println("修改之后的 animal1对象的 name = " + animal1.getName() + " animal1对象的 age = " + animal1.getAge());

        // 封装
        Car car = new Car("Benz", "write");
        System.out.println("Car 对象的  board = " + car.getBoard() + " color = " + car.getColor());


        // final
        /*
        * 常量用 final修饰，不能被修改
        * final方法不能被子类重写
        * final类不能被继承
        * */
        System.out.println(PI);
    }
}
